ActionController::Routing::Routes.draw do |map|

  map.resources :users
  map.resources :card_scores

  map.resource :session

	  map.resources :scores
	  
	  map.resources :fsets, :member => {:rate => :post}
	  map.search 'search', :controller => "fsets", :action => "search"
	  map.resources :fusers 
	  map.resources :fsets, :member => {:fplay => :get, # create a new normal game
										:add_tag => :post, # add a new tag for this item. 
										:just_wrong => :get,  	# create a new "only wrong" game
										:until_correct => :get, # create a new "until correct" game
										:stats_none => :get, # create a new "until correct" game
										:stats => :get} # view the stats for a fset
							
	  map.resources :fsets do |fset|
		fset.resources :flashcards
		fset.resources :games, :member => {:play => :get,
											:next_card => :get,
											:correct => :post, 		# post if correct - redirects
											:wrong => :post,  		# post if incorrect - redirects
											:all_cards => :post} 	# no longer used?
	  end
	map.resources :flashcards  
    map.signup '/signup', :controller => 'users', :action => 'new'
    map.login '/login', :controller => 'sessions', :action => 'new'
    map.logout '/logout', :controller => 'sessions', :action => 'destroy'

  
  # The priority is based upon order of creation: first created -> highest priority.

  # Sample of regular route:
  #   map.connect 'products/:id', :controller => 'catalog', :action => 'view'
  # Keep in mind you can assign values other than :controller and :action

  # Sample of named route:
  #   map.purchase 'products/:id/purchase', :controller => 'catalog', :action => 'purchase'
  # This route can be invoked with purchase_url(:id => product.id)

  # Sample resource route (maps HTTP verbs to controller actions automatically):
  #   map.resources :products

  # Sample resource route with options: Below I've written what this gives me below! :) 
  #   map.resources :products, :member => { :short => :get, :toggle => :post }, :collection => { :sold => :get }

  # Member will give me a new action route
  # GET /users/1/short
  # POST /users/1/toggle
  
  # Collection one will give me a new   
  # GET /users/sold
  
  # Sample resource route with sub-resources:
  #   map.resources :products, :has_many => [ :comments, :sales ], :has_one => :seller
  
  # Sample resource route with more complex sub-resources
  #   map.resources :products do |products|
  #     products.resources :comments
  #     products.resources :sales, :collection => { :recent => :get }
  #   end

  # Sample resource route within a namespace:
  #   map.namespace :admin do |admin|
  #     # Directs /admin/products/* to Admin::ProductsController (app/controllers/admin/products_controller.rb)
  #     admin.resources :products
  #   end

  # You can have the root of your site routed with map.root -- just remember to delete public/index.html.
   map.root :controller => "fsets"

  # See how all your routes lay out with "rake routes"

  # Install the default routes as the lowest priority.
  # Note: These default routes make all actions in every controller accessible via GET requests. You should
  # consider removing the them or commenting them out if you're using named routes and resources.
  map.connect ':controller/:action/:id'
  map.connect ':controller/:action/:id.:format'
end
